It is common to design systems including networked motion video cameras for various purposes. For instance may such a system be a surveillance system. The types of systems may be quite expensive systems and therefore are often individual motion video cameras added to existing systems instead of replacing all the motion video cameras in the system with new ones when the system have to be expanded. This is also true when one or a limited number of the motion video cameras in a system have to be replaced for one reason or another. The owner of the system would then rather replace an individual motion video camera than replacing all the motion video cameras. Moreover, the clients receiving the motion video data are often software implementations which are easily updated and are therefore also often updated. Hence, the user that wants to access data from an old motion video camera may experience difficulties presenting the data due to the client being restricted to presenting newer formats. One reason for restricting the formats that the client is able to present may be that the client device could be a device having limited resources, e.g. memory, bandwidth, CPU, resolution, etc., and therefore the client software is designed to only present some selected formats.
For instance there are plenty of different formats available for motion video as cameras may operate using different container formats, e.g. AVI (Audio Video Interleave), .mp4 (MPEG-4 Part 14), FLV (Flash Video), MOV (QuickTime container), OGG, OGM, OGV, MKV (Matroska), VOB (DVD Video Container), ASF, etc., using different encoding formats, e.g. MPEG-1, MPEG-2, MPEG-3, MJPEG, DV (Digital Video), H.264, H.265, WMV (Windows Media Video), RM (Real Media), DivX, QuickTime, Ogg, etc., capturing images at different frame rates, capturing images at different aspect ratios, capturing images at different image sizes, etc.
In the context of the present application a container format is a specification that describes the structure of a media file, e.g. where the various pieces are stored, how they are interleaved, and which codecs are used by which pieces. The container format may specify both a video codec and an audio codec. Further, in the context of the present application an encoding format is defining the method to be used to encode and decode the data, e.g. audio or video.
In these types of systems including networked motion video cameras of different types, age, brands, or features, the client is not necessarily able to decode and/or present all of the data formats delivered by the motion video cameras. Hence, when the user of the client accesses a particular motion video camera in order to examine the motion video data from the motion video camera it is possible that the client is unable to present the data due to restrictions in the client in view of the number of formats it is able to present.